////////////////////////////////////////////////////////////////////////////////
/// @file     mcu.c
/// @author   ZZC
/// @brief    
////////////////////////////////////////////////////////////////////////////////
#include "config.h"

////////////////////////////////////////////////////////////////////////////////
/// @brief  100us
/// @param  None
/// @retval None
////////////////////////////////////////////////////////////////////////////////
void CallBack_100us(void)
{
	/////////////////////////////////////////////////
	///@brief SIF  100us	
	/////////////////////////////////////////////////
	rec_data_sif();		///sif_rx
	send_data_sif();	///sif_tx	
	/////////////////////////////////////////////////
	///@brief TIME FLAG 	
	/////////////////////////////////////////////////
	{///TIME FLAG	
		static	u8 tim500us=0;
		static	u8 tim5ms,tim20ms,tim50ms;
		
		///500us
		tim500us++;
		if (tim500us>=5)	tim500us = 0;  
		else	return ; 
			
		///5ms
		tim5ms++;
		if(tim5ms>=10)	{tim5ms=0; tim5ms_flag =  1;}	
		else	return; 
		
		///20ms
		tim20ms++;
		if (tim20ms >= 4) {tim20ms = 0;	tim20ms_flag = 1;} 
				 
		///50ms
		tim50ms++;
		if (tim50ms >= 10) {tim50ms = 0; tim50ms_flag = 1;}  		
	}///TIME FLAG END			
}

////////////////////////////////////////////////////////////////////////////////
/// @brief  250us
/// @param  None
/// @retval None
////////////////////////////////////////////////////////////////////////////////
void CallBack_250us(void)
{
	return ;
}	
////////////////////////////////////////////////////////////////////////////////
/// @brief  Uart_Rx
/// @param  None
/// @retval None
////////////////////////////////////////////////////////////////////////////////
void CallBack_Uart_Rx(void)
{
	if (uart_rec_js < sizeof(uart_rec_data)) 
	{
		uart_rec_data[uart_rec_js] = UART_RX_REG;
	}
	if(uart_rec_js<250) 
	{
		uart_rec_js++;
	}

	uart_received_flag = true;									
	uart_idle_time = 0;		
}
////////////////////////////////////////////////////////////////////////////////
/// @brief  Uart_Tx
/// @param  None
/// @retval None
////////////////////////////////////////////////////////////////////////////////
void CallBack_Uart_Tx(void)
{
	if(uart_send_count<(uart_send_length-1))
	{
		uart_send_count++;
		UART_TX_REG(uart_send_datas[uart_send_count]);
		uart_send_time = 0;
	} 
	else 
	{
	
	}
}
